To deliver new functionalities and improve the existing product, CQG periodically updates the CQG API. In most cases, these changes will run smoothly with existing user applications, however in some cases these applications must be modified to make them compatible with the new API.
In this page of the documentation, you will find a list of what was changed in which version of CQG API.
To ensure a smooth transition, upgrading users should start deploying a new CQG API by checking this page first.
Note:
All changes that may require code modification are in bold.
13x4
The following objects were added to introduce new functionality to CQG API:
- CQGAPIConfig.PendingOrderActionEnabled property
- CQGAlgorithmicOrderDefinition.DefaultValueIndex property
- GetTickSizeFor and GetTickValueFor methods
- ApplyDaylightSavingChanges.CQGAPIConfig property
12x3
- eInstrumentProperty.ipWorkup enumeration was added.
- New FAQ item: CEL memory usage is growing by time. Is it a memory leak?
12x2
No changes were introduced to CQG API.
12x1
The following objects were added to introduce new functionality to CQG API:
- CQGFill.GWTrades and CQGFill.GWTradesCount properties
- CQGGWTrade interface and CQGGWTrades collection
- CQGTimedBar.ContractVolume, CQGTimedBar.CommodityVolume, CQGTimedBar.ContractTickVolume, CQGTimedBar.CommodityTickVolume, CQGTimedBar.ContractOpenInterest, CQGTimedBar.CommodityOpenInterest properties
- New enumerators tbrContractVolume, tbrCommodityVolume, tbrContractTickVolume, tbrCommodityTickVolume, tbrContractOpenInterest, tbrCommodityOpenInterest added to the eTimedBarsRequestOutputs enumeration
- CQGPointAndFigureBar.PFHigh and CQGPointAndFigureBar.PFLow were added and CQGPointAndFigureBar.High and CQGPointAndFigureBar.Low were modified
The following objects were removed:
- CQGInstrument.YOI, CQGInstrument.TodayTotalVolume, CQGInstrument.YesterdayTotalVolume properties
- eInsturmentProperty.ipYOI, eInsturmentProperty.ipTodayTotalVolum, eInsturmentProperty.ipYesterdayTotalVol enumerators
8x7
- CQGAPIConfig.IncludeOrderTransactions property
- The following order events are obsolete: oeQueueTimeout, oeCancelQueueTimeout, oeModifyQueueTimeout, oeInTransTmout, oeInModTmout, and oeInCanTmout. These will not be fired anymore.
- eInstrumentProperty.ipFirstNoticeDate enumerator
- CQGOrder.OrderCheckMark property and eOrderProperty.opOrderCheckMark enumerator
8x6
- CQGCEL.CreateOrderChain, CQGCEL.PlaceCompoundOrder and CQGCEL.ModifyCompoundOrder methods and CQGOrderChain interface: provide OCO compound order functionality
- ipFirstNoticeDay enumeration: provides information about an instrument's first notice day
8x5
- CQGCEL.GWOTPLogon method: provides one time password functionality
- CQGTFlowBarsRequest.DomAskVolumeLevel and CQGTFlowBarsRequest.DomBidVolumeLevel properties and eTFlowRequestDomVolumeLevel enumerator
- CQGAlgorithmicOrderDefinition.Values property, CQGAlgorithmicOrderDefinition.AddValue method and eAlgorithmicOrderPropertyType.aoptBoolean, eAlgorithmicOrderPropertyType.aoptList enumerators
- CQGPositions.ItemByIndex property
- CQGInstrumentSubscriptionRequest interface
- CQGPositionsStatement interface
- CQGSummariesStatement interface
- CQGConstantVolumeBar.TimestampOffset property, CQGCurves.TimestampOffset propety, CQGExpressionOutputs.TimestampOffset property, CQGPointAndFigureBar.TimestampOffset property, and CQGTFlowBar.TimestampOffset property interfaces.
8x4
- CQGAPIConfig.NewInstrumentMode property
- CQGAccountSummary.ProfitLoss method
- CQGCEL methods: CreateInstrumentRequest, QueryPositionsStatement, QuerySummariesStatement, and RemoveInstrumentsGroup
- CQGCEL Properties: AllExpressions, AllInstrumentsGroups, and AllTimedBars
- CQGCEL events: PositionsStatementResolved and SummariesStatementResolved
- TimestampOffset property for: CQGConstantVolumeBar, CQGPointAndFigureBar, CQGTFlowBar, CQGTradingSystemStatistics, CQGTradingSystemTrade, CQGCurves, CQGExpressionOutputs, and CQGTradingSystemTradesRow.
- CQGInstrument properties: DOMStatus, ExchangeAbbreviation, ExchangeID, PropertyLevel, QuoteLevel, TickSizeFractionDenominator, and TickSizeFractionNumerator
- CQGInstrumentSubscriptionRequest interface
- CQGPosition.ManualFillsInvolved property
- CQGPositionsStatement interface
- CQGQuote.HasVolume property
- CQGSession properties: ValidStartTime and ValidEndTime
- CQGSummariesStatement interface
- CQGTradingSystemBaseBarParameter interface
- CQGTradingSystemBaseBarParameters collection
- CQGTradingSystemRequest properties: BaseBarParameters and BaseBarType
- CQGSessions properties: DescriptionStart, DescriptionEnd, DescriptionNumber, and Holidays.
- eDataSourceStatus enumerator: dssDisabled
- eInstrumentProperty enumerators: ipLeadingContractName, ipTickSizeFractionNumerator, and ipTickSizeFractionDenominator
- eOrderProperty enumerator: opTradingExpression
- ePropertySubscriptionLevel enumeration
- eQuoteSubscriptionLevel enumeration
- Enumerators for eQuoteType: qtIndicativeOpen, qtTodayMarker, and qtMarker
- eTradingSystemBaseBar enumeration
- eTradingSystemBaseBarParameter enumeration
- CQGCEL.GWOPLogon method and CQGCEL.OTPRequired property
8x3
- Added new functionality to manually add and edit transactions that actually were conducted from other systems. These are the objects that provide this functionality:
- CQGCEL.CreateManualFillRequest method
- CQGCEL.RequestManualFills method
- CQGCEL.RequestManualFillUpdate method
- CQGCEL.AllManualFills Property
- CQGCEL.ManualFillChanged event
- CQGCEL.ManualFillsResolved event
- CQGCEL.ManualFillUpdateResolved event
- CQGManualFill interface
- CQGManualFills collection
- CQGManualFillsCollection collection
- CQGManualFillRequest interface
- eManualFillsDataLevel enumeration
- eManualFillUpdateType enumeration
- New enumerators added to eOrderProperty: opLastFillTime and opCanceledTime
- CQGTicksRequest.TickFilter property was added
- CQGHoliday
- CQGHolidays
- CQGHistoricalSessionsRequest
- CQGCEL.RequestHistoricalSessions method
- CQGCEL.CreateHistoricalSessionsRequest method
- CQGCEL.HistoricalSessionsResolved event
- CQGSessions.DescriptionEnd, CQGSessions.DescriptionNumber, CQGSessions.DescriptionStart, CQGSessions.Holidays
- eHistoricalSessionsRequestType enumeration
- CQGOrder.CancelationInstruction and eOrderCancelationType
8x2870
- Wherever the term "TradeFlow" was mentioned in object names, it was replaced by "TFlow".
For example, CQGTradeFlowBar was renamed as CQGTFlowBar.
Solution: Basically, replacing all TradeFlow by TFlow in your existing code will be sufficient. - The Following objects were added to introduce new functionality to CQG API:
CQGTradeEntries collection
CQGTradingSystemRelationAddInfo interface
CQGCEL.TradingSystemTradeRelationAddNotification event
CQGTradeEntry.RelatedExits property
CQGTradeExit.RelatedEntries property
CQGTradeExits.ItemByName property
CQGTradingSystemTrade.IsActive property
CQGTradingSystemTrade.Timestamp property
CQGTradingSystemTrade.TradesRow property